package com.ymttest.database.sharding.db.sharding.model;

import java.math.BigDecimal;
import java.util.Date;

public class OrderDetailPromotionPo {
    /**
     * id BIGINT(19) 必填<br>
     * 主键Id
     */
    private Long id;

    /**
     * order_detail_id BIGINT(19) 必填<br>
     * order_detail表中的order_detail_id
     */
    private Long orderDetailId;

    /**
     * order_id BIGINT(19) 必填<br>
     * 
     */
    private Long orderId;

    /**
     * catalog_id VARCHAR(50) 必填<br>
     * 
     */
    private String catalogId;

    /**
     * promotion_id INTEGER(10) 必填<br>
     * 营销ID
     */
    private Integer promotionId;

    /**
     * promotion_type INTEGER(10) 必填<br>
     * 促销类型(1-满件减 2-满件折 3-满额减 4-满额折 5-第二件半价)
     */
    private Integer promotionType;

    /**
     * promotion_name VARCHAR(255)<br>
     * 营销名称
     */
    private String promotionName;

    /**
     * promotion_value VARCHAR(30)<br>
     * 满减时，减掉的金额；满折时，打的折扣
     */
    private String promotionValue;

    /**
     * reduced_amount DECIMAL(18,2) 必填<br>
     * 应用该优惠时，共优惠的金额
     */
    private BigDecimal reducedAmount;

    /**
     * match_condition VARCHAR(30)<br>
     * 满件时，需达到的件数;满额时,需要达到的额度
     */
    private String matchCondition;

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 新增时间
     */
    private Date addTime;

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 更新时间
     */
    private Date updateTime;

    /**
     * id BIGINT(19) 必填<br>
     * 获得 主键Id
     */
    public Long getId() {
        return id;
    }

    /**
     * id BIGINT(19) 必填<br>
     * 设置 主键Id
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * order_detail_id BIGINT(19) 必填<br>
     * 获得 order_detail表中的order_detail_id
     */
    public Long getOrderDetailId() {
        return orderDetailId;
    }

    /**
     * order_detail_id BIGINT(19) 必填<br>
     * 设置 order_detail表中的order_detail_id
     */
    public void setOrderDetailId(Long orderDetailId) {
        this.orderDetailId = orderDetailId;
    }

    /**
     * order_id BIGINT(19) 必填<br>
     * 获得 
     */
    public Long getOrderId() {
        return orderId;
    }

    /**
     * order_id BIGINT(19) 必填<br>
     * 设置 
     */
    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    /**
     * catalog_id VARCHAR(50) 必填<br>
     * 获得 
     */
    public String getCatalogId() {
        return catalogId;
    }

    /**
     * catalog_id VARCHAR(50) 必填<br>
     * 设置 
     */
    public void setCatalogId(String catalogId) {
        this.catalogId = catalogId == null ? null : catalogId.trim();
    }

    /**
     * promotion_id INTEGER(10) 必填<br>
     * 获得 营销ID
     */
    public Integer getPromotionId() {
        return promotionId;
    }

    /**
     * promotion_id INTEGER(10) 必填<br>
     * 设置 营销ID
     */
    public void setPromotionId(Integer promotionId) {
        this.promotionId = promotionId;
    }

    /**
     * promotion_type INTEGER(10) 必填<br>
     * 获得 促销类型(1-满件减 2-满件折 3-满额减 4-满额折 5-第二件半价)
     */
    public Integer getPromotionType() {
        return promotionType;
    }

    /**
     * promotion_type INTEGER(10) 必填<br>
     * 设置 促销类型(1-满件减 2-满件折 3-满额减 4-满额折 5-第二件半价)
     */
    public void setPromotionType(Integer promotionType) {
        this.promotionType = promotionType;
    }

    /**
     * promotion_name VARCHAR(255)<br>
     * 获得 营销名称
     */
    public String getPromotionName() {
        return promotionName;
    }

    /**
     * promotion_name VARCHAR(255)<br>
     * 设置 营销名称
     */
    public void setPromotionName(String promotionName) {
        this.promotionName = promotionName == null ? null : promotionName.trim();
    }

    /**
     * promotion_value VARCHAR(30)<br>
     * 获得 满减时，减掉的金额；满折时，打的折扣
     */
    public String getPromotionValue() {
        return promotionValue;
    }

    /**
     * promotion_value VARCHAR(30)<br>
     * 设置 满减时，减掉的金额；满折时，打的折扣
     */
    public void setPromotionValue(String promotionValue) {
        this.promotionValue = promotionValue == null ? null : promotionValue.trim();
    }

    /**
     * reduced_amount DECIMAL(18,2) 必填<br>
     * 获得 应用该优惠时，共优惠的金额
     */
    public BigDecimal getReducedAmount() {
        return reducedAmount;
    }

    /**
     * reduced_amount DECIMAL(18,2) 必填<br>
     * 设置 应用该优惠时，共优惠的金额
     */
    public void setReducedAmount(BigDecimal reducedAmount) {
        this.reducedAmount = reducedAmount;
    }

    /**
     * match_condition VARCHAR(30)<br>
     * 获得 满件时，需达到的件数;满额时,需要达到的额度
     */
    public String getMatchCondition() {
        return matchCondition;
    }

    /**
     * match_condition VARCHAR(30)<br>
     * 设置 满件时，需达到的件数;满额时,需要达到的额度
     */
    public void setMatchCondition(String matchCondition) {
        this.matchCondition = matchCondition == null ? null : matchCondition.trim();
    }

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 获得 新增时间
     */
    public Date getAddTime() {
        return addTime;
    }

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 设置 新增时间
     */
    public void setAddTime(Date addTime) {
        this.addTime = addTime;
    }

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 获得 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 设置 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", orderDetailId=").append(orderDetailId);
        sb.append(", orderId=").append(orderId);
        sb.append(", catalogId=").append(catalogId);
        sb.append(", promotionId=").append(promotionId);
        sb.append(", promotionType=").append(promotionType);
        sb.append(", promotionName=").append(promotionName);
        sb.append(", promotionValue=").append(promotionValue);
        sb.append(", reducedAmount=").append(reducedAmount);
        sb.append(", matchCondition=").append(matchCondition);
        sb.append(", addTime=").append(addTime);
        sb.append(", updateTime=").append(updateTime);
        sb.append("]");
        return sb.toString();
    }
}